#include <iostream>
#include <string>

using namespace std;
//指针引用

//节点结构体

typedef struct Node
{
    int data;
    struct Node *next;
}Node;

//头节点结构体
typedef struct link_list
{
    Node * next;
}link_list;

//单链表的创建
int init_link_list(link_list * & list)
{
    list = (link_list *)malloc(sizeof(link_list));
    return 0;
}

// nullptr == null c++ 11 新标准

/*
指针引用
变量引用

type & 变量名 
type == int *

type 普通变量
type & 引用变量 = 普通变量

引用变量 = 50;

type 普通变量
type & 引用变量 = 普通变量

引用变量 = 0x7788;
普通变量<0x7788>

int * 普通变量 = nullptr
int * & 引用变量 = 普通变量

引用变量 = 0x7788; <动态变量>
普通变量 = 0x7788; <动态变量>
*/

int main(int argc, char const *argv[])
{
    link_list * list = NULL;

    init_link_list(list);

    cout << "list = " << list << endl;
    
    return 0;
}
